#include "Heuristique.h"



Heuristique::Heuristique(int nbMachine)
{
	this->nbMachine = nbMachine;
}

Heuristique::~Heuristique(void)
{
}

int Heuristique::GetNumMachine()
{
	return rand()%nbMachine;
}

int Heuristique::GetNumMachine(const Process* process, DataParser* data)
{
	Machine* machine = data->machines()[rand()%nbMachine];
	while (!controlcapacities(process,machine))
			machine = data->machines()[rand()%nbMachine];

	return machine->id();
}

bool Heuristique::controlcapacities(const Process* processus,Machine* machine)
{
	if (machine->HasNegativeRemainingCapacity()) 
	{
		return false;
	}
	return true;
}

bool Heuristique::controlservices(const Process* process, Machine* machine)
{
	//process->service().processes().
	return true;
}